package com.atguigu.system.model.entity;

import java.security.SecureRandom;
import java.util.Base64;

/**
 * @author FangGL
 */
public class RandomCodeGenerator {

    /**
     * 生成40位随机字符串。
     * @return 40位随机字符串
     */
    public static String generateRandomCode() {
        // 使用SecureRandom生成随机字节
        SecureRandom random = new SecureRandom();
        byte[] bytes = new byte[30]; // 40位字符串，使用30字节的数据生成
        random.nextBytes(bytes);

        // 将字节转换为Base64字符串，然后取前40个字符
        String base64Result = Base64.getUrlEncoder().withoutPadding().encodeToString(bytes);
        return base64Result.substring(0, 40);
    }
}
